package com.sa07.config;

import java.util.ArrayList;
import java.util.List;

import com.sa07.bean.TestItemBean;
import com.sa07.ui.bean.TestBean;
import com.sa07.ui.bean.TestItemUiBean;
import com.sa07.ui.enums.TestResult;

/**
 * 测试项配置
 * 
 * @author Long.shangbo
 * 
 *         2014-2-18 下午7:56:43
 */
public enum TestItemConfig {

	INSTANCE;

	private List<TestItemBean> testItems = null;

	private List<TestBean> testUiItems = null;

	/**
	 * ' 初始化测试项配置
	 * 
	 * @param testItems
	 */
	public void init(List<TestItemBean> items) {
		if (testItems == null) {
			this.testItems = items;
		}
	}

	/**
	 * 这份数据在测试时使用
	 * 
	 * @return
	 */
	public List<TestItemBean> getTestItems() {
		return testItems;
	}

	/**
	 * 这份数据给界面使用
	 * 
	 * @return
	 */
	public List<TestBean> getTestUiItems() {
		if(testUiItems == null && testItems != null){
			testUiItems = new ArrayList<TestBean>();
			TestItemUiBean uiItem = null;
			
			for(TestItemBean testItem : testItems){
				uiItem = new TestItemUiBean();
				uiItem.setTestId(testItem.getTestItemId());
				uiItem.setTestItemName(testItem.getTestItemName());
				uiItem.setTestResult(TestResult.NOT_TEST);
				testUiItems.add(uiItem);
			}
		}
		
		return testUiItems;
	}

	/**
	 * 根据编号获得测试项
	 * 
	 * @return
	 */
	public TestItemBean getTestItemById(int testId) {
		return testItems.get(testId);
	}
}
